package com.four.mapper;

import com.four.entity.Reg;
import com.four.vo.EchartVo;
import com.four.vo.RegVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface RegMapper {
    int deleteByPrimaryKey(Integer regId);

    int insert(Reg record);

    int insertSelective(Reg record);

    Reg selectByPrimaryKey(Integer regId);

    int updateByPrimaryKeySelective(Reg record);

    int updateByPrimaryKey(Reg record);

    /**
     *添加预约信息
     */
    int addReg(@Param("regvo") RegVo regVo);

    /**
     * 根据预约信息的号删除预约信息
     */
    int deleteByRegId(@Param("regId") Integer regId);

    /**
     *根据预约id查询该条预约信息
     */
    Reg selectByRegId(@Param("regId")Integer regId);
    /**
     *修改预约信息
     */
    int updateRegByRegId(Reg reg);

    /**
     *根据医生id查询预约信息
     */
    List<Reg> selelctRegByAdminId(@Param("adminId") Integer adminId);

    /**
     * 根据患者姓名和患者身份证号查询预约信息
     */
    List<Reg> selectByRegNameAndIdcard(@Param("regName") String regName,@Param("idcard") String idcard);

    /**
     * 根据患者姓名和患者身份证号以及患者手机号查询预约信息
     */
    List<Reg> selectByRegNameIdcardPhonenumber(@Param("regName") String regName,@Param("idcard") String idcard,@Param("phonenumber")String phonenumber);

    /**
     * 查询性别比例
     */
    List<EchartVo> selectBySex();

    /**
     * 查询年龄段分布
     */
    List<EchartVo> selectByAge();

    /**
     * 查询过去一周的预约数量
     */
    List<EchartVo> selectByDate();

    /**
     * 查询过去一周的营收
     */
    List<EchartVo> selectByIncome();

}